package com.crypto;

import org.apache.commons.codec.binary.Hex;
import org.apache.commons.codec.digest.DigestUtils;

/**
 * sha256 工具类
 * @author zyf
 */
public class Sha256 {

    /**
     *
     * @param input byte数组
     * @return byte数组
     */
    public static byte[] hash(byte[] input) {
        return DigestUtils.sha256(input);
    }

    /**
     *
     * @param input byte数组
     * @return HexString
     */
    public static String hashStr(byte[] input){
        return Hex.encodeHexString(hash(input));
    }

    /**
     *
     * @param input String
     * @return String HexString
     */
    public static String hashStr(String input) {
        return Hex.encodeHexString(DigestUtils.sha256(input));
    }

    /**
     *
     * @param input String
     * @return byte数组
     */
    public static byte[] hashToBytes(String input) {
        return DigestUtils.sha256(input);
    }
}
